1. Field
Embodiments of the invention relate to the field of computer systems and more specifically, but not exclusively, to using a block device interface to invoke device controller functionality.
2. Background Information
Today's computer systems may include a variety of block devices. A block device stores information in fixed-sized blocks that are individually addressable. Common block sizes are 512 bytes, 1 kilobyte (KB), 2 KB, and 4 KB. Storage disks are a common type of block device.
Often, a device controller is used to access a corresponding block device. Read-write commands issued to a block device may be handled by the device controller. Such device controller commands may be standardized for a particular block device interface, such as the Advanced Technology Attachment (ATA) interface.
However, device controller tasks, such as a device controller firmware update, do not use standard read-write interface commands to the data blocks of the block device. Usually, customized interfaces, that use unique control and status registers, are used to affect such specialized hardware functionality of the device controller. Such customized hardware interfaces require considerable development and deployment expense.